In cellular networks, for example in Global System for Mobile communications (GSM), the cellular network keeps track of the location of a mobile station (MS) at least on cell level. It is also possible that the geographical location of a MS is determined. Information about the geographical location of a MS can be useful, for example, for certain services or in emergency situations.
There are various services available in the Internet. Many of these services would gain from receiving information, which indicates the location of the device asking for service. For example, an international business may have a service, which automatically gives information about the stores or service points near the user's current location. Currently it is not possible to locate an IP device connected to the Internet, other than using its IP address. An IP address, on the other hand, is not a reliable way to locate a device, as using Mobile IP it is possible to temporarily or more permanently change the location of a device without changing IP address.
In GSM, there are certain circuit-switched data services using which it is possible to have a data connection between, for example, a laptop having a card phone and a server in the Internet. General Packet Radio Service (GPRS), which is an addition to the GSM, is an example of a wireless packet switched network. GRPS and GSM, among other cellular networks, can be used as access networks to packet data networks. A packet data device can be connected to a mobile station, and via the mobile station and a cellular network, the packet data device can communicate with a packet data network. It is possible to locate the packet data device, for example, by locating the mobile station to which it is connected. It would be convenient to transmit location information about the packet data device to a server in the packet data network from an access network, for example from a cellular network. There are, however, problems relating to the confidentiality of location information and to the need of authenticating the parties who request location information.
FIG. 1 presents a schematic diagram of a GSM network and a GPRS network as an example of an access network through which a packet data device can be connected to a packet data network 130. A mobile station (MS) 101 communicates with a base station (BTS) 112a. There may be, for example, a lap top computer or other packet data device 102, connected to the mobile station 101. It is also possible that the mobile station is capable of transmitting and processing packet data. In the GSM radio access network (RAN) 110, base stations are connected to base station controllers (BSC). In FIG. 1 base stations 112a and 112b are connected to a base station controller (BSC) 113. The base station controller is responsible, for example, for allocation of radio resources and for handling handovers, where a mobile station changes the base station it communicates with. The base stations and base station controllers form the GSM RAN 110.
There are separate core networks for the GSM and the GPRS. A GSM core network 140 comprises in the fixed part of the network Mobile Service Switching centers (MSC), and one MSC 141, to which the BSC 113 is connected, is presented as an example in FIG. 1. The GSM core network 140 is usually connected to a Public Switched Telephone Network (PSTN). The GPRS core network 120 comprises GPRS supporting nodes (GSN). Of these nodes, the one which interfaces a packet data network 130, for example the Internet, is called Gateway GPRS supporting node (GGSN). In FIG. 1, a GGSN 122 is presented. Data packets may run through many GSNs, which act as routers. A mobile station or a packet data device connected to the mobile station, which is the endpoint of the data connection, is reachable through one base station controller and the GSN connected to this base station controller is called Serving GPRS support node (SGSN). In FIG. 1, the mobile station 101 or device 102 is reachable via the BSC 113 and the GSN connected to this BSC is SGSN 121.
There are also network elements, which are common for the GSM and GPRS networks. In FIG. 1 the common part of the GSM and GPRS networks is presented as a separate network cloud 150. The common part of the GSM and GPRS comprises, for example, Home Location Register (HLR) 151 and Visitor Location Register (VLR) 152, which take part in subscriber and mobility management. Furthermore, there is an entity called Mobile Location Center (MLC) 153, which is responsible for determining the location of a mobile station.
An entity, which is external to the GSM network, may query the location of a certain mobile station by sending a location request to a Gateway Mobile Location Center (GMLC). FIG. 2 presents an example of the message sequence related to the locating of the mobile station. In FIG. 2, the network elements relating to the procedure are marked with vertical lines, and the name of the entity is above each line. The messages are marked with arrows. The messages and names of the messages are given as examples; the location procedure may alternatively be carried out in a different manner than presented in FIG. 2. An entity requesting the location of a certain mobile station is usually called a Location Service (LCS) Client. This entity sends a LCS request 201 to the GMLC. The LCS request comprises an identifier, for example IMSI (International Mobile Subscriber Identifier) or MSISDN, specifying the mobile station, whose location is queried. The GMLC authenticates the LCS Client to make sure that it is entitled to receive location information. After successful authentication the GMLC asks with the Routing Data message 202 the HLR, which is related to the mobile station, the current or latest MSC, through which the mobile has been reachable; this MSC is called the Visiting MSC (VMSC). After receiving information about the VMSC from the HLR, the GMLC send a Subscriber Request 203 to this VMSC. The VMSC typically pages 204 the MS in question to receive information about the cell, in which the mobile station currently is. Thereafter the mobile station is notified of the location query with a LCS notification 205. The mobile station may either allow or refuse its location to be told. If the mobile station allows its location to be told, the VMSC asks a Serving Mobile Location Center (SMLC), which handles the location of mobile stations in the network the mobile station currently is in, to locate the mobile station with message 206. Thereafter the geographical location of the mobile station is determined. There are various possible ways to determine the location of a mobile station: the cellular network may calculate the location of a mobile station using only the information it has, the mobile station may provide some information for the location process, or the mobile station may perform the location itself, and inform the network about its current location. When the SMLC determines the location of a mobile station, various network elements, such as BSC, BS and MS itself, may be involved in the location process. The messages relating to determining the location are presented in FIG. 2 with arrow 207. After the location has been determined, the SMLC returns the location information to the VMSC (message 208). The VMSC forwards the location information to the GMLC (message 209), which in turn sends a LCS response 210 to the LCS Client, which initiated the location query.
It is possible to give information about the location of a certain mobile station to a party, which is not a part of the cellular network. The LCS Client in FIG. 2 is an example of such a party. The party requesting location information is usually authenticated, because location information generally needs to be treated in a confidential manner. Generally, there has to be a prenegotiated contract between the cellular network operator and the party requesting location information. When the contract is made, usually some secret authentication information (for example a shared key) is exchanged, and for each request, the party has to present it possesses this secret authentication information, for example by encrypting a part of the location request message with the secret key. The GMLC has its copy of the secret keys relating to the LCS Clients, for example. When an LCS Client, for example, tells it identity, the GMLC can then check using its copy of the a secret key that the LCS Client encrypted the text with the correct key. It is also possible to carry out a separate authentication procedure.
It is also possible to locate a packet data device 101, which is connected to a packet data network via an access network having location tracking capabilities. There may be, for example, a Location Server LS 131, which is connected to a packet data network 130, for example to the Internet. In the Internet, the identifier, which typically distinguishes devices from each other, is the IP address. The Location Server thus may know, for example, an IP address of a certain IP device. To be able to ask from a cellular network the location of the IP device, the Location Server must know to which mobile station the IP device is connected. The IP device may thus inform the Location Server, using for example a certain application and protocol designed for this purpose, about its IP address and about the MSISDN number of the mobile station connected to the IP device. The IP address may be a static IP address, which stays the same even when the location of the mobile device/station changes, or a dynamic IP address allocated, for example, by the GPRS network. If a dynamic IP address is used, there is of course some other identifier such as MSISDN which typically together tell to the Location Server the identity of the IP device.
There may be a vast number of Location Servers in the Internet. In principle, each of the Location Server operators should have a contract with each cellular network operator to ensure that it can locate an IP device which is connected to the Internet via a cellular network. The number of contracts a cellular network operator or a Location Server operator should thus make can be enormous. Furthermore, as a service in the Internet may have a short lifetime, it can be a tedious work to maintain a database, for example, containing IP addresses and authentication information of the Location Servers, which are authorized to receive location information from a cellular network. Furthermore, a packet data device connected to a packet network via an access network, for example a cellular network, may wish to authenticate a Location Server before information about the location of the packet data device is transmitted to the Location Server.